項目21 クロージャが変数スコープとどう関わるかを把握しておく
Effective Python 第2版 3章 関数
クロージャとは、定義されたスコープの変数を参照する関数
例:
https://github.com/bslatkin/effectivepython/blob/4ae6f3141291ea137eb29a245bf889dbc8091713/example_code/item_21.py#L50-L55
helper関数の中でgroupを参照しているので、クロージャ
LEGB scoping
ref:
Function dissection lab -- learn how functions work by examining their innards
nonlocal
データをクロージャの外に出す